ABC248 C - Dice Sum
提出
code: python
import itertools
n, m, k = map(int, input().split())
# 2 3 4
# A(A1, A2) 1 <= A1, A2 <= 3
# TODO: 探索を打ち切る
# TODO: itertools.product 使わない
ans = 0
if (sum(p) <= k):
ans += 1
print(ans % 998244353)
解答
code: python
n, m, k = map(int, input().split())
# 2 3 4
# n: 組み合わせ
# m: 最大の数
# k: 総和の最大
mod = 998244353
# dpij : 数列の i 番目まで決めて、総和が j であるものの個数 dp = [0 * (k + 1) for _ in range(n + 1)] # 数列の 0 番目まで決めて、総和が 0 の個数
#「 i番目 Aiまで決めて、総和が j の数列」から、i+1 番目の要素 Ai+1 を決めたときの遷移を考える for i in range(n):
for ik in range(k):
for im in range(1, m + 1): # Ai + 1 の数
if ik + im > k: # k 以上はいらない
break
# print(dp)
# 1, 0, 0, 0, 0], 0, 1, 1, 1, 0, [0, 0, 1, 2, 3 テーマ
メモ
提出
code: python
n, m, k = map(int, input().split())
# n: 組み合わせ
# m: 最大の数
# k: 総和の最大
# O(pow(m, n))
# (3, 1) -> (2, 1)...